/**
 * creation: 17-apr-2008
 */
package org.jfonia.structure;

import org.jfonia.connect.Node;
import org.jfonia.connect.Value;

/**
 * "time" slice of a family, representing the position(s) in all family-lists
 * 
 * 
 * @author wijnand.schepens@gmail.com
 * 
 */
public interface Slice extends Node
{
	Node getProceeder();
	Value<Boolean> getProceedCondition();
	
	boolean hasProperty(String id);
	Value getProperty(String id);
	Value getLookaheadProperty(String id);
	
	Value<Integer> getKey(String id);		// safe: increasing integers, starting at -infty and ending at infty
	Value<Integer> getLookaheadKey(String id);
	
	Node getFastForwarder(String id, Value target);
	
}
